﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.IO;
using System.Reflection;

namespace chess
{

    public enum enumFigType { B, T, L, S, D, K };
    public enum enumFigParty { Black, White };
    public enum enumFieldStatus {  Black, White, Empty };
    public enum enumFigStatus { active, lost };

    public enum enumFieldMarkerType { destination, offended, none };

    public class Tools
    {

        //Notation:
        //|Anz1Zug:1.ZugTeil+weitereZugTeile|AndereZüge:ZugTeil1+weitere|...

        public static string bMove = "2:1F|1:1F|1:1F+1L|1:1F+1R|1:1R|1:1L";
        public static string tMove = "1:0F|8:1F|8:1L|8:1R|8:1B";
        public static string lMove = "1:0F|8:1F+1L|8:1F+1R|8:1B+1L|8:1B+1R";
        public static string sMove = "1:0F|1:2F+1L|1:2F+1R|1:2L+1F|1:2L+1B|1:2B+1L|1:2B+1R|1:2R+1F|1:2R+1B";
        public static string dMove = "1:0F|8:1F|8:1B|8:1L|8:1R|8:1F+1L|8:1F+1R|8:1B+1L|8:1B+1R";
        public static string kMove = "1:0F|1:1F|1:1B|1:1L|1:1R|1:1F+1L|1:1F+1R|1:1B+1L|1:1B+1R";

        public static Random rnd = new Random(DateTime.Now.Second);

        public static string[] columnTranslation = new string[8] { "A", "B", "C", "D", "E", "F", "G", "H" };

        /*
        public static string AssemblyPath
        {
            get
            {
                
                string codeBase = Assembly.GetExecutingAssembly().CodeBase;
                UriBuilder uri = new UriBuilder(codeBase);
                string path = Uri.UnescapeDataString(uri.Path);
                return Path.GetDirectoryName(path);
            }
        }
        */

    }
}
